package com.engine.salary.entity.salarysob.po;

import com.engine.hrmelog.annotation.ElogTransform;
import com.engine.salary.enums.salarysob.SalaryEmployeeStatusEnum;
import com.engine.salary.enums.salarysob.TargetTypeEnum;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Collection;
import java.util.Date;

/**
 * 关联人员
 * <p>Copyright: Copyright (c) 2022</p>
 * <p>Company: 泛微软件</p>
 *
 * @author qiantao
 * @version 1.0
 **/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
//hrsa_salary_sob_range", autoResultMap = true)
@ElogTransform(name = "薪资账套关联人员")
public class SalarySobRangePO {

    /**
     * 主键id
     */
    @ElogTransform(name="id")
    private Long id;

    /**
     * 薪资账套的id
     */
    @ElogTransform(name="薪资账套id")
    private Long salarySobId;

    /**
     * 对象类型
     * @see TargetTypeEnum
     */
    @ElogTransform(name="对象类型")
    private Integer targetType;

    /**
     * 对象id
     */
    @ElogTransform(name="对象id")
    private Long targetId;

    /**
     * 对象id
     */
    @ElogTransform(name="SQL")
    private String target;
    /**
     * 人员状态
     * @see SalaryEmployeeStatusEnum
     */
    @ElogTransform(name="人员状态")
    private Integer employeeStatus;

    /**
     * 人员状态使用逗号分隔
     * @see SalaryEmployeeStatusEnum
     */
    @ElogTransform(name="人员状态")
    private String employeeStatuses;

    /**
     * 是包含还是排除 0：排除、1：包含
     */
    @ElogTransform(name="是包含还是排除")
    private Integer includeType;

    /**
     * 租户key
     */
    @ElogTransform(name="租户key")
    private String tenantKey;

    /**
     * 创建人id
     */
    @ElogTransform(name="创建人id")
    private Long creator;

    /**
     * 是否删除
     */
    @ElogTransform(name="是否删除")
    private Integer deleteType;

    /**
     * 创建时间
     */
    @ElogTransform(name="创建时间")
    private Date createTime;

    /**
     * 更新时间
     */
    @ElogTransform(name="更新时间")
    private Date updateTime;

    Collection<Long> ids;
}
